package com.yunji.cabinet.params;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.yunji.common.annotation.Excel;
import com.yunji.common.base.PageDTO;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import org.hibernate.validator.constraints.Length;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @Project: yunji-coffee
 * @Package: com.yunji.cabinet.params
 * @Title: CabinetRecordsParam
 * <p>
 * History:
 * Date                     Version     Author          Summary
 * ============================================================
 * 2024-08-01 11:34:17      V1.0        HuaAo       新建类
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class DeviceEventParam extends PageDTO implements Serializable {
    @ApiModelProperty("事件code(事件数据唯一码 非常重要)")
    private String eventDataCode;
    @ApiModelProperty("货柜编码")
    private String imei;
    @ApiModelProperty("用户类型:   PLATE('00', '平台'), STAFF('12', '员工'),SITE('13', '网点'),  USER('21', '客户')")
    private String userType;
    @ApiModelProperty("用户名称")
    private String realName;
    @ApiModelProperty("网点名称")
    private String siteName;
    @ApiModelProperty("商品名称")
    private String productName;
    @ApiModelProperty("货柜名称")
    private String containerName;
    @ApiModelProperty("点位名称")
    private String locationName;
    @ApiModelProperty(hidden = true)
    private String searchField;


    @ApiModelProperty("业务类型： FACTORY_TEST('工厂测试'),//工厂测试触发\n" +
            "    ORDER('下单'),//下单\n" +
            "    STAFF_RESTOCK('员工补货'),//员工补货\n" +
            "    STAFF_TAKE('员工取货'),//员工取货\n" +
            "    TEMPLATE_MODIFY('更换模板'); // 更换模板")
    private String eventType;

    @ApiModelProperty("指令： OPEN_RESTOCK('打开补货仓门'),//打开补货仓门\n" +
            "    OPEN_SHIPPING('打开出货仓门'),//打开出货仓门\n" +
            "    PING('工厂测试'),//ping机器\n" +
            "    GET_VERSION('获取版本号'),")
    private String eventCmd;
}